#ifndef scps_defines_h
#define scps_defines_h

#include <stdio.h>
#include <stdbool.h>

#define MAX_NP_TOTAL_LEN  0x1fff
#define MAX_SCPS_SOCKET   256  /* must be same size of (scps_fd_set) */

#define TRUE              1
#define FALSE             0


#define DEF_PREC          0
#define DEF_IPPREC        2
#define USE_DEF_PREC      29
#define MAX_PREC          15
#define DEFAULT_HOP_COUNT 10
#define MAX_NUM_GROUPS    10
#define MAX_NUM_IF        3
#define PATHMASK          0xfffff3f7  /* doesn't have SelfID, BitFd conts, & byte 4 */
#define VPI               0x80
#define ES3               0x42

#define SUFF_CL_SYNC   TRUE

#define CKSUM_MASK        0x1
#define DA_MASK           0x2
#define SID_MASK          0x4
#define BFC1_MASK         0x8
#define BFC_MASK          0x80
#define SA_MASK           0x40
#define HP_MASK           0x20
#define TS_MASK           0x18
#define QOS_MASK          0x4
#define ExADD_MASK        0x2
#define INT_DEL_MASK      0x10
#define ExQOS_MASK        0x20
#define IPv6_MASK         0x40

/* don't use about defines; use enumerated type instead: */
#define  SP         8     /* SCPS Security Protocol */
#define  SP3        9     /* Secure Data Network Systems Security Protocol 3 */
#define  IPV6AUTH   10    /* Speculative IPv6 authorization exchange */
#define  IPV6ESP    11    /* Speculative IPv6 telepathic exchange */
#define  SCPSCTP    105   /* SCPS Compressed TCP Headers   */
#define  SCPSNP     118


/* Move these to scps.h,they need to be there */
/* SCPS Protocol IDs */

#define NP                      0    /* SCPS Network Protocol */

//#define SP                      7    /* SCPS Security Protocol */
#define PROTO_MAX               256

#define DEFAULT_RATE            2000000

#define GATEWAY_DEFAULT_RATE    2000000
#define GATEWAY_DEFAULT_BUFFER  32768

#endif /* scps_defines_h */
